Method and device for detecting connectivity termination of internet protocol version 6 access networks

ABSTRACT

The present invention discloses a method and device for detecting connectivity termination in an IPv6 access network based on a DHCP service model. The method for detecting connectivity termination according to the invention comprises the steps of: creating an entry of the subscriber connectivity cache list corresponding to the subscriber terminal in the access node when the IPv6 connectivity between the subscriber terminal and the access node is established successfully; querying the entry of the neighbor cache list corresponding to the subscriber terminal based on the polling time set in the entry of the subscriber connectivity cache list; deciding whether the connectivity of the subscriber terminal is normal based on the entry information corresponding to the subscriber terminal of the subscriber connectivity cache list and neighbor cache list; and performing termination processing on the connectivity of the subscriber terminal logging off abnormally.

TECHNICAL FIELD

The present invention relates to Internet Protocol version 6 (IPv6)access networks, in particular to a method and device for detectingconnectivity termination in IPv6 access networks.

BACKGROUND ART

With the rapid development of network technology, IPv6 is becomingmature as the next version of Internet Protocol. Since IPv6 can providemore IP addresses and automatic configuration mechanism, various newservices (for example, peer-to-peer application) are configured thereonso as to meet a subscriber's different requirements. Thus, accountingvarious services used by a subscriber becomes a key problem of IPv6.

In order to do the correct accounting, the connectivity time between asubscriber and the network has to be detected correctly. A goodconnectivity termination detection mechanism should be able to dulydetect the abnormal logoffs of the subscriber, for example, the abnormallogoffs due to sudden power off or hardware failure. Then, thismechanism should be able to provide, with respect to such events, basisfor service time based accounting, and at the same time, guarantee thesafety of using the service by the subscriber, i.e.: the mechanism shallavoid that if subscriber A does an abnormal logoff and this event is notdetected, subscriber B may steal the service with subscriber A's IPaddress.

A conventional Internet Protocol version 4 (IPv4) access network uses aPoint-to-Point Protocol (PPP) to monitor a session connectivity viaperiodic polling, thereby determining whether the connectivity isterminated. However, the following problems arise when a PPP is appliedto a PPP-based service mode of IPv6 access networks:

1. Only a 64-bit interface identifier can be negotiated.

As far as an IPv6 terminal (host machine) is concerned, the IPv6terminal itself can generate a 64-bit interface identifier.

The global IP address of the IPv6 terminal has to be negotiated in otherschemes, for example, the auto-configuration scheme of DHCPv6 (DynamicHost Computer Protocol on IPv6) or stateless auto-configuration scheme.Thus, the complexity of network architecture will be increased if theIPv6 access networks use a PPP-based link detection method.

2. A PPP-based network cannot support multicast data stream.

In a PPP mode, it needs to set up a—layer-2 (or physical layer) PPP link(or PPP tunnel) for each network terminal. When a plurality of terminalsin a subscriber network belong to the same multicast group, it needs toduplicate multiple identical multicast data packets in each PPP link(tunnel). Apparently, such a scheme consumes a large amount of bandwidthand fails to make full use of the characteristics of multicast.

In view of the above disadvantages and with the maturity of IPv6,services of access network (e.g. Voice over IP (VoIP) andvideo-on-demand (VoD)) and various applications are more inclined to usea pure IP approach, i.e. to set up a network connectivity in a non-PPPapproach. Since the use of DHCPv6 can realize authentication, serviceselection and IP address allocation more conveniently, the service modebased on DHCPv6 develops gradually. In this service mode, once theterminal of a DHCPv6 is re-connected to the network, an available IPaddress (which is used in limited lease time) is automatically allocatedfrom the public IP address pool of a device named as DHCPv6 server andthe additional IP configuration information is delivered to the DHCPv6terminal. Thus, the function of “plug and play” of an IPv6 network canbe realized without configuring the DHCPv6 terminal manually.

FIG. 1 schematically illustrates a structural diagram of an IPv6 accessnetwork based on DHCP service mode, wherein an access node 101 serves asan IPv6 router to manage the whole access network and control theautomatic configuration of services. The DHCPv6 server (not shown) orDHCPv6 proxy (not shown) can be located in the access node 101. TheDHCPv6 server uses the state DHCPv6 auto-configuration mechanism toallocate to subscriber terminal 1 . . . n IPv6 addresses and otherconfiguration messages, for example, DNS server address or SIP serveraddress.

With regard to reclaiming resources, usually the DHCPv6 serverterminates the connectivity of DHCPv6 to thereby release correspondingresources after receiving the DHCP RELEASE message sent from theterminal. When the connectivity is abnormally terminated, the DHCPv6server can use a timeout mechanism to process this state. The timeoutmechanism controls connectivity states of links in the network bysetting lease time for IP addresses. The lease time of IPv6 address inDHCPv6 is usually much longer than that prescribed in the timeoutmechanism of the PPPv6 link control protocol and is generally in theorder of hour. Apparently, as stated above, such a lease time is hard tosatisfy the requirements of safety and accounting. Nevertheless, settingthe lease time as one minute is not realistic either, because this willforce the DHCPv6 server to allocate IP addresses to the terminalfrequently.

According to the specification of RFC 2641, a neighbor cache list ismaintained in the access node 101. In this list, there is an entrycorresponding to each subscriber terminal, identifying the state whetherthe subscriber terminal is reachable to the access node 101. All thefields in the entries of the neighbor cache list are shown in FIG. 2A.

In FIG. 2A, according to the specification of RFC 2641, the entries ofthe neighbor cache list may include a plurality of different fields,wherein an “IPv6 address” field identifies the address of the subscriberterminal to which this entry corresponds. As for each subscriberterminal whose connectivity is not terminated, the neighbor cache listhas respectively a corresponding entry. A “Neighbor_State” fieldidentifies whether the subscriber terminal is reachable and may have thefollowing states:

1. Reachable

Within the “ReachableTime” after receiving a positive confirmationindicating that the neighbor is reachable, a “Neighbor_State” field isset as a “REACHABLE” state, showing that the subscriber terminal isreachable within this period of time. In this state, no particularoperation is performed when the packet data is transmitted. If thepositive confirmation is received once again within the “ReachableTime”,the system will reset time. The RFC 2461 defines the “ReachableTime”whose default value is uniformly distributed between 15 seconds to 45seconds.

2. Stale

If no reachable positive confirmation is received again within the“ReachableTime” after receipt of a positive confirmation indicating theneighbor is reachable, the “Neighbor_State” field enters a “stale”state. When the state is “stale”, any operation is not performed untildata is transmitted.

3. Delay

If, in the “stale” state, there are data packets to be transmitted, the“Neighbor_State” field enters a “DELAY” state. This state will last atmost “DELAY_FIRST_PROBE_TIME”, i.e. 5 seconds. During this period oftime, it comes into the “PROBE” state if no reachable confirmation isreceived.

The “delay state” is an optimum state, and the existence thereof makesthe upper layer protocol (for example, three-way handshake mechanism ofTCP) acquire additional time, thereby expecting the confirmation thatthe neighbor is reachable.

4. Probe

If the confirmation that the neighbor is reachable is not acquired inthe “DELAY” state, the “Neighbor_State” field is set as a “PROBE” state.In this state, a neighbor request is issued every fixed time (defaultvalue is 1000 ms) to expect a reachable confirmation.

Using the entries in the aforesaid neighbor cache list, it may detectwhether a subscriber terminal is reachable when downlink data is readyto be transmitted in the network. However, in the case that the networkhas not transmitted downlink data for a long time, it is impossible tolearn whether the subscriber terminal is reachable since the access nodewill not probe the connectivity situation of the subscriber terminal onits own initiative. During this period of time, the subscriber is likelyto be logoff abnormally. The aforesaid situation of insecurity willhappen if the connectivity of the subscriber terminal is not terminatedduly and accurate accounting cannot be executed.

How to strike a balance between the processing requirements andresources consumption has become an urgent problem to be solved in theIPv6 access networks.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a method and device fordetecting whether the connectivity between a subscriber terminal and anaccess node is terminated. The method and device are applied to theDHCP-based service mode in an IPv6 access network. The IPv6 accessnetwork comprises an access node and at least one subscriber terminal, aneighbor cache list being stored in the access node. All the entries ofthe neighbor cache list are used to indicate whether the subscriberterminals connected to the access node are reachable respectively,wherein each entry includes an “IPv6 address” field for identifying thesubscriber terminal to which this entry corresponds, and a“Neighbor_State” field to identify whether the subscriber terminal isreachable.

The method for detecting whether a connectivity between a subscriberterminal and an access node is terminated in an IPv6 access networkaccording to the invention comprises the steps of:

creating an entry of the subscriber connectivity cache listcorresponding to the subscriber terminal in the access node when theIPv6 connectivity between the subscriber terminal and the access node isestablished successfully;

querying the entry of the neighbor cache list corresponding to thesubscriber terminal based on the polling time set in the entry of thesubscriber connectivity cache list;

deciding whether the connectivity of the subscriber terminal is normalbased on the entry information corresponding to the subscriber terminalof the subscriber connectivity cache list and neighbor cache list; and

performing termination processing on the connectivity of the abnormallylogoff subscriber terminal.

The present invention further provides a device for detectingconnectivity termination, comprising:

processing means for creating an entry of the subscriber connectivitycache list when the IPv6 connectivity between the subscriber terminaland the access point is established successfully, querying the entry ofthe neighbor cache list corresponding to the subscriber terminal whenthe polling time expires, deciding whether the connectivity of thesubscriber terminal is normal based on the information stored in thesubscriber connectivity cache list and the neighbor cache list, andperforming termination processing on the connectivity of the subscriberterminal logging off abnormally;

storing means for storing the subscriber connectivity cache list; and

time counting means for time counting based on the time set in the“Polling_Time” field in the entry of the subscriber connectivity cachelist.

The method and device for detecting connectivity termination of theinvention can be used to detect, in a relatively short time, the stateindicating whether the subscriber terminal and the access node of IPv6access networks are connected normally, without affecting the normaloperation of the access node and the subscriber terminal, therebyaccounting more accurately the subscriber's use of the services.

BRIEF DESCRIPTION OF DRAWINGS

The characteristics and advantages of the present invention will becomemore apparent through the following illustration of the preferredembodiments with reference to the drawings, wherein:

FIG. 1 schematically illustrates a structural diagram of an IPv6 accessnetwork based on DHCPv6 service mode;

FIG. 2A illustrates all the fields in the entries of a neighbor cachelist;

FIG. 2B illustrates all the fields in the entries of a subscriberconnectivity cache list according to the invention;

FIG. 3 is a flow chart of a method for detecting connectivitytermination according to the invention; and

FIG. 4 schematically illustrates a structural diagram of a device fordetecting connectivity termination according to the invention.

EMBODIMENTS

The principle of the invention will be explained in more detail throughthe following preferred embodiments.

In order to duly determine whether the subscriber terminal is reachable,the present invention creates, in an access node, a data structure, i.e.a subscriber connectivity cache list. The entries of this list representthe connectivity state of each subscriber terminal and the next pollingtime respectively, all the fields therein being shown in FIG. 2B.

As shown in FIG. 2B, the entries of the subscriber connectivity cachelist include the following fields:

1. “IPv6 address” Field

identifying the address of the subscriber terminal to which this entrycorresponds. For each subscriber terminal that is connected normally,there is a corresponding entry in the subscriber connectivity cachelist.

2. “Subscriber_State” Field

identifying the state of the subscriber terminal. It may has thefollowing states:

-   -   (1) ACTIVE    -   identifying the connectivity of the subscriber terminal is        normal, that is, the subscriber is using the service(s) provided        by the access node.    -   (2) DELAY    -   identifying it is waiting for other standard mechanisms (for        example, the detection mechanism of Neighbor Discovery        Processing) of IPv6 to monitor the detection results about        whether the subscriber terminal is reachable;    -   (3) PROBE    -   directly and voluntarily triggering the Neighbor Unreachability        Detection mechanism to determine whether the neighbor        (subscriber terminal) is in an active state.

3. “Polling_Time” Field

identifying the next polling time for the subscriber.

Through the subscriber connectivity cache list created in the accessnode, the access node can detect duly whether the subscriber terminal isreachable by querying the neighbor cache list and the subscriberconnectivity cache list, terminate the connectivity when detecting thatthe subscriber terminal logs off abnormally and stop accounting.

The method for detecting connectivity termination according to theinvention is hereby explained in detail with reference to FIG. 3.

As shown in FIG. 3, the method for detecting connectivity termination ofa subscriber terminal according to the invention starts from step 301.In step 302, once the IPv6 connectivity between the subscriber terminaland the access node is established successfully, an AuthenticationAuthorization Accounting (AAA) server begins to charge the user. In themeanwhile, an entry of the subscriber connectivity cache listcorresponding to the subscriber is created in the access node, settingthe “Subscriber_State” field in the entry as “ACTIVE”, and the“Polling_Time” field as the first predetermined polling time.

After that, the procedure enters step 303. Waiting is executed in step303. When the polling time expires, the procedure enters step 304. Instep 304, the entry of the neighbor cache list to which the subscribercorresponds is queried. Then, in step 305, it is decided whether thereexists a corresponding entry of the neighbor cache list. When it isdecided in step 305 that there is no corresponding entry of the neighborcache list, the procedure enters step 306. In step 306, it is determinedthe subscriber terminal logs off abnormally to thereby notify the DHCPv6server of this situation, inform the AAA server of stopping accountingand at the same time, delete the entries of the subscriber connectivitycache list to which the subscriber corresponds. The procedure shown byFIG. 3 ends at step 307.

When it is decided in step 305 that there exists a corresponding entryof the neighbor cache list, the procedure enters step 308. In step 308,it is decided whether the “Neighbor_State” field in the entry of theneighbor cache list is “REACHABLE”. If so, the procedure enters step309. In step 309, it is determined that the subscriber is in a normalconnectivity state at this time. The “Subscriber_State” field in theentry of the subscriber connectivity cache list is set as “ACTIVE”, andthe “Polling_Time” field as the first predetermined polling time.Preferably, the first predetermined polling time is 53 seconds. Afterthat, the procedure returns to step 303 to start the next round ofwaiting. At this time, the polling time to be waited for is the firstpredetermined polling time.

When it is decided in step 308 that the “Neighbor_State” field in theentry of the neighbor cache list is not “REACHABLE”, the procedureenters step 310. In step 310, it is decided whether the “Neighbor_State”field in the entry of the neighbor cache list is “stale”, and whetherthe “Subscriber_State” field in the entry of the subscriber connectivitycache list is “ACTIVE”. When it is decided that the “Neighbor_State”field is “stale” and the “Subscriber_State” field is “ACTIVE”, theprocedure enters step 311. Otherwise, the procedure enters step 312. Instep 311, the “Subscriber_State” field in the entry of the subscriberconnectivity cache list is set as “PROBE”, the “Polling_Time” field isset as the second predetermined polling time, and the NeighborUnreachable Detection processing is triggered voluntarily. Setting the“Subscriber_State” field in the entry of the subscriber connectivitycache list as “PROBE” means that the access node will start the NeighborUnreachable Detection processing on its own initiative so as to probewhether the subscriber is reachable.

The second predetermined polling time is determined according to thedefault time when the “Neighbor_State” field in the entry of theneighbor cache list is “PROBE”. The default time is 3 seconds. It mayset the second predetermined polling time as being equal to or greaterthan the default time at the aforesaid “PROBE” state, for example, 5seconds. Thus, it ensures that the confirmation as to whether the“Neighbor_State” is reachable can be received when the secondpredetermined polling time expires. However, in order to achieve theobject of the invention, i.e. detecting whether the subscriber terminalis connected normally as soon as possible, it is preferable to set thesecond predetermined polling time as being equal to the default time 3seconds when the “Neighbor_State” field is “PROBE”. After that, theprocedure returns to step 303 to start the next round of waiting. Atthis time, the polling time to be waited for is the second predeterminedpolling time.

When it is decided in step 312 that the “Neighbor_State” field in theentry of the neighbor cache list is “DELAY” and the “Subscriber_State”field in the entry of the subscriber connectivity cache list is“ACTIVE”, the procedure enters step 313. Otherwise, the procedure entersstep 314. In step 313, the “Subscriber_State” field in the entry of thesubscriber connectivity cache list is set as “delay”, and the“Polling_Time” field is set as the third predetermined polling time.Setting the “Subscriber_State” field in the entry of the subscriberconnectivity cache list as “DELAY” means that the access node will waitfor the detection result as to whether the subscriber terminal isreachable detected by other existing mechanisms (for example, when theaccess node has data to be transmitted to the corresponding terminal inthe “stale” state, the access node will enter the “DELAY” state totrigger a corresponding mechanism to monitor whether the neighbor isreachable), thereby finally determining whether the subscriber isreachable.

The third predetermined polling time is determined according to the sumof the default time when the “Neighbor_State” field in the entry of theneighbor cache list is “DELAY” and “PROBE”. The sum of the default timeis 8 seconds. It may set the third predetermined polling time as beingequal to or greater than the above sum of the default time in “DELAY”and “PROBE” states, for example, 10 seconds. Thus, it is ensured thatthe confirmation as to whether the “Neighbor_State” is reachable can bereceived when the third predetermined polling time expires. However, inorder to achieve the object of the invention, i.e. detecting whether thesubscriber terminal is connected normally as soon as possible, it ispreferable to set the third predetermined polling time as being equal tothe sum of default time, 8 seconds, when the “Neighbor_State” field is“DELAY” and “PROBE”. After that, the procedure returns to step 303 tostart the next round of waiting. At this time, the polling time to bewaited for is the third predetermined polling time.

When it is decided in step 314 that the “Neighbor_State” field in theentry of the neighbor cache list is “PROBE” and the “Subscriber_State”field in the entry of the subscriber connectivity cache list is“ACTIVE”, the procedure enters step 315. Otherwise the procedure entersstep 306. In step 315, the “Subscriber_State” field in the entry of thesubscriber connectivity cache list is set as “delay”, and the“Polling_Time” field is set as the fourth predetermined polling time.Setting the “Subscriber_State” field in the entry of the subscriberconnectivity cache list as “DELAY” means that the access node will waitfor the detection result as to whether the subscriber terminal isreachable detected by other mechanisms, thereby finally determiningwhether the subscriber is reachable.

The fourth predetermined polling time is determined according to thedefault time when the “Neighbor_State” field in the entry of theneighbor cache list is “PROBE”. The default time is 3 seconds. It mayset the fourth predetermined polling time as being equal to or greaterthan the default time at the aforesaid “PROBE” state, for example, 5seconds. Thus, it is ensured that the confirmation as to whether the“Neighbor_State” is reachable can be received when the fourthpredetermined polling time expires. However, in order to accomplish theobject of the invention, i.e. detecting whether the subscriber terminalis connected normally as soon as possible, it is preferable to set thefourth predetermined polling time as being equal to the default time 3seconds when the “Neighbor_State” field is “PROBE”. After that, theprocedure returns to step 303 to start the next round of waiting. Atthis time, the polling time to be waited for is the fourth predeterminedpolling time.

In step 306, since it is decided that the “Neighbor_State” field in theneighbor cache is none of “REACHABLE”, “stale”, “DELAY” or “PROBE”states after the previous decisions, it may be determined that thesubscriber terminal logs off abnormally to thereby notify the DHCPv6server of this situation, inform the AAA server of stopping accountingand at the same time, delete the entry of the subscriber connectivitycache list to which the subscriber corresponds. The procedure shown byFIG. 3 ends at step 307.

In the method for detecting connectivity termination according to theinvention, the first predetermined polling time could be set accordingto the actual requirements of subscribers. However, in order to strikean optimum balance between the processing complexity of the access nodeand timeliness of termination detection, it may select the firstpredetermined polling time from the default time of several states inthe “Neighbor_State” field in the entry of neighbor cache list.Preferably, the first predetermined polling time is set as being equalto or greater than the sum of the following three: the longest defaulttime 45 second when the “Neighbor_State” field in the neighbor cachelist is “reachable’; the default time 5 seconds when the“Neighbor_State” field is “delay”; and the default time 3 seconds whenthe “Neighbor_State” field is “PROBE”. Thus, the sum of the three is 53seconds. Then, the first predetermined polling time is set as beingequal to or greater than 53 seconds, for example 60 seconds.

The first predetermined polling time indicates that it may be detectedwhether the connectivity between the subscriber terminal and the accessnode is normal within the time length according to the method fordetecting connectivity termination of the invention. It is much shorterthan the connectivity termination time controlled in the order of hourin the prior art. Therefore, this method of the invention is able todetect more accurately whether the subscriber terminal logs offabnormally to thereby avoid the problem of security and inaccurateaccounting, which may occur.

The present invention further provides a device 400 for detectingconnectivity termination in an IPv6 access network, as shown in FIG. 4.The device comprises a processing means 401, a storing means 402 and atime counting means 403. The device 400 for detecting connectivitytermination according to the invention can be installed within oroutside an access node.

After a connectivity between a subscriber terminal and an access node isestablished successfully, the processing means 401 creates an entry ofthe subscriber connectivity cache list that corresponds to thesubscriber terminal, and stores the entry of the subscriber connectivitycache list in the subscriber connectivity cache list of the storingmeans 402. The entry of the subscriber connectivity cache listrepresents the connectivity status of the corresponding subscriberterminal and the access node. The processing means 401 sets the“Subscriber_State” field in the entry of the subscriber connectivitycache list as “ACTIVE” and the “Polling_Time” field as the firstpredetermined polling time, for example, 60 seconds. At the same time,the processing means 401 issues an instruction of starting accounting tothe AAA server and issues an instruction of starting time counting tothe time counting means 403. The time counting means 403 starts timecounting according to the first predetermined polling time as set.

When the first predetermined polling time expires, the time countingmeans 403 notifies the processing means 401 of querying the entries ofthe neighbor cache list and the entries of the subscriber connectivitycache list stored in the storing means 402, and performs differentprocessing according to their different states. It should be noted thatthe aforesaid neighbor cache list could be stored either in the storingmeans 402 of the device 400 for detecting connectivity terminationaccording to the invention or in the access node directly.

Below, different processing performed by the processing means 401 isexplained in detail.

When the processing means 401 queries that the neighbor cache list hasno entry corresponding to the subscriber terminal, it makes a decisionthat the subscriber terminal has already logged off abnormally. Then,the processing means 401 issues an instruction of stopping accounting tothe AAA server and deleting the entry corresponding to the subscriberterminal from the subscriber connectivity cache list of the storingmeans 402.

When the processing means 401 queries that the neighbor cache listcontains the entry corresponding to the subscriber terminal, the“Neighbor_State” field in the entry of the neighbor cache list is“REACHABLE”, and the “Subscriber_State” field in the entry of thesubscriber connectivity cache list is set as “ACTIVE”, it is determinedthat the subscriber terminal is in normal connectivity. Thus, the“Subscriber_State” field is set as “ACTIVE” and the “Polling_Time” fieldis reset as the first predetermined polling time. The processing means401 issues an instruction of starting timing to the time counting means403. The time counting means 403 restarts timing according to the firstpredetermined polling time as set and notifies the processing means 401of starting the query of next turn when the timing expires.

When the processing means 401 queries that the neighbor cache listcontains the entry corresponding to the subscriber terminal, the“Neighbor_State” field in the entry of the neighbor cache list is“stale”, and the “Subscriber_State” field in the entry of the subscriberconnectivity cache list is “ACTIVE”, the “Subscriber_State” field in theentry of the subscriber connectivity cache list is set as “PROBE” andthe “Polling_Time” field as the second predetermined polling time,preferably 3 seconds. At the same time, the processing means 401triggers the Neighbor Unreachable Detection processing. The timecounting means 403 is activated to start timing. The time counting means403 restarts timing according to the second predetermined polling timeas set and notifies the processing means 401 of starting the query ofnext turn when the counted time expires.

When the processing means 401 queries that the neighbor cache listcontains the entry corresponding to the subscriber terminal, the“Neighbor_State” field in the entry of the neighbor cache list is“delay”, and the “Subscriber_State” field in the entry of the subscriberconnectivity cache list is “ACTIVE”, the “Subscriber_State” field in theentry of the subscriber connectivity cache list is set as “DELAY” andthe “Polling_Time” field as the third predetermined polling time,preferably 8 seconds. The time counting means 403 is activated to starttiming. The time counting means 403 restarts timing according to thethird predetermined polling time as set and notifies the processingmeans 401 of starting the inquiry of next turn when the timing expires.

When the processing means 401 queries that the neighbor cache listcontains the entry corresponding to the subscriber terminal, the“Neighbor_State” field in the entry of the neighbor cache list is“PROBE”, and the “Subscriber_State” field in the entry of the subscriberconnectivity cache list is “ACTIVE”, the “Subscriber_State” field in theentry of the subscriber connectivity cache list is set as “DELAY” andthe “Polling_Time” field as the fourth predetermined polling time,preferably 3 seconds. The time counting means 403 is activated to starttiming. The time counting means 403 restarts timing according to thefourth predetermined polling time as set and notifies the processingmeans 401 of starting the inquiry of next turn when the timing expires.

Through the previous explanation it can be seen that the method anddevice for detecting connectivity termination in an IPv6 access networkaccording to the invention use the “Neighbor_State” field in an entry ofthe standard neighbor cache list to create a subscriber connectivitycache list representing the connectivity state between the subscriberterminal and the access node for setting polling time, thereby ensuringthat the connectivity state of the subscriber terminal is detected oncewithin a relatively short time, for example, one minute. When thesubscriber terminal has been detected logging off abnormally, theconnectivity is terminated and the accounting is stopped to therebyguarantee the security and reliability of the subscriber account. Such amethod and device can be easily applied to a conventional access nodeand will not have any impact on the access node of IPv6.

It should be noted that the method and device for detecting connectivitytermination in an IPv6 access networks according to the invention can beapplied not only to a DHCPv6-based network model, actually, such amethod and device that perform corresponding processing according to thestate of an entry in the neighbor cache list and trigger correspondingmechanism can also be applied to a non-DHCP network model throughcreating a corresponding entry of the subscriber connectivity cacheentry at appropriate time.

Various variation and modifications of the invention can be made withoutdeparting from the scope and concept of the invention. The presentinvention is not limited to the above specific embodiments. The scope ofthe invention is defined by the appended claims.

1. A method for detecting whether a connectivity between a subscriber terminal and an access node is terminated in an IPv6 access network, said IPv6 access network having said access node and at least one said subscriber terminal, said access node storing a neighbor cache list, the method comprising: creating an entry of a subscriber connectivity cache list corresponding to a subscriber terminal in an access node when connectivity between the subscriber terminal and the access node is established successfully; querying an entry of a neighbor cache list corresponding to the subscriber terminal based on a polling time set in the entry of the subscriber connectivity cache list, the polling time being based on entry information in the subscriber connectivity cache list and entry information in the neighbor cache list, the subscriber connectivity cache list including a subscriber state that identifies the state of the subscriber terminal, the neighbor cache list including a neighbor state that identifies whether the subscriber terminal is reachable; deciding whether the connectivity is desired based on the entry information corresponding to the subscriber terminal of the subscriber connectivity cache list and neighbor cache list, the entry information of the neighbor cache list identifying at least if the subscriber terminal is reachable; performing termination processing on the connectivity of the subscriber terminal based on the neighbor cache list and the subscriber connectivity cache list when logging off abnormally; and deleting the created entry of the subscriber connectivity cache list when logging off abnormally.
 2. The method for detecting whether a connectivity is terminated according to claim 1, wherein the entry of the subscriber connectivity cache list further comprises: an “IPv6 address” field for identifying an address of the subscriber terminal; a “Subscriber_State” field for identifying a connectivity state of the subscriber terminal; and a “Polling_Time” field for setting the polling time.
 3. The method for detecting whether a connectivity is terminated according to claim 2, wherein the creating an entry of the subscriber connectivity cache list step (i) sets the “Subscriber_State” field as “ACTIVE”, representing that said subscriber terminal is connected, and (ii) sets the “Polling_Time” field as a first polling time.
 4. The method for detecting whether a connectivity is terminated according to claim 3, wherein said first polling time is equal to or greater than a sum of at lease one of: a first default time when a “Neighbor_State” field of the neighbor cache list is “reachable”; a second default time when the “Neighbor_State” field is “delay”; and a third default time when the “Neighbor_State” field is “PROBE”.
 5. The method for detecting whether a connectivity is terminated according to claim 1, wherein the querying step further comprises: awaiting a corresponding polling time according to the time set in the “Polling_Time” field in said entry of said subscriber connectivity cache list, and inquiring whether the neighbor cache list contains an entry corresponding to the subscriber terminal when the polling time expires.
 6. The method for detecting whether a connectivity is terminated according to claim 5, wherein the deciding step comprises: deciding that the subscriber terminal logs off abnormally when the neighbor cache list does not contain an entry corresponding to the subscriber terminal after query; and deciding, when the neighbor cache list contains the entry corresponding to the subscriber terminal after query, whether the connectivity is normal based on the state of the “Neighbor_State” field therein and a state of the “Subscriber_State” field in the entry of the subscriber connectivity cache list.
 7. The method for detecting whether a connectivity is terminated according to claim 6, wherein the processing step comprises: terminating, the connectivity between the subscriber terminal and the access node when the subscriber terminal logs off abnormally, and deleting the entry corresponding to the subscriber terminal from the subscriber connectivity cache list.
 8. A device for detecting whether a connectivity between a subscriber terminal and an access node is terminated in an IPv6 access network, said IPv6 access network having said access node and at least one said subscriber terminal, said access node storing a neighbor cache list, and an entry of said neighbor cache list including an “IPv6 address” field and a “Neighbor_State” field, the device comprising: a processor configured to, create an entry of a subscriber connectivity cache list when a connectivity between a subscriber terminal and a access point is established successfully, query an entry of a neighbor cache list corresponding to the subscriber terminal when a polling time expires, the polling time being based on entry information in the subscriber connectivity cache list and entry information in the neighbor cache list, the subscriber connectivity cache list including a subscriber state that identifies the state of the subscriber terminal, the neighbor cache list including a neighbor state that identifies whether the subscriber terminal is reachable, decide whether the connectivity is desired based on information stored in the subscriber connectivity cache list and the neighbor cache list, the entry information of the neighbor cache list identifying at least if the subscriber terminal is reachable, and perform termination processing on the connectivity of the subscriber terminal based on the neighbor cache list and the subscriber connectivity cache list when logging off abnormally; a memory configured to store the subscriber connectivity cache list; a time counter configured to count based on a time set in a “Polling_Time” field in the entry of the subscriber connectivity cache list; and a deleter configured to delete the created entry of the subscriber connectivity cache list when logging off abnormally.
 9. The device for detecting connectivity termination according to claim 8, wherein the entry of said subscriber connectivity cache list comprises: an “IPv6 address” field for identifying an address of a subscriber terminal corresponding to this entry; a “Subscriber_State” field for identifying a connectivity state of the subscriber terminal; and a “Polling_Time” field for setting the polling time.
 10. The device for detecting connectivity termination according to claim 9, wherein the possessor is configured to set the “Subscriber_State” field as “ACTIVE”, representing that the subscriber terminal is connected, and set the “Polling_Time” field as a first polling time when it creates an entry of a subscriber connectivity cache list.
 11. The device for detecting connectivity termination according to claim 10, wherein said first polling time is equal to or greater than a sum of at least one of: a first default time when a “Neighbor_State” field of the neighbor cache list is “reachable; a second default time when the “Neighbor_State” field is “delay”; and a third default time when the “Neighbor_State” field is “PROBE”.
 12. The device for detecting connectivity termination according to claim 11, wherein the processor is configured to decide that the subscriber terminal logs off abnormally when the neighbor cache list does not contain an entry corresponding to said subscriber terminal after a query, thereby terminating the connectivity of the subscriber terminal and deleting the entry corresponding to the subscriber terminal from the subscriber connectivity cache list from the storing means; the possessor is configured to decide when the neighbor cache list contains the entry corresponding to said subscriber terminal after query, whether the connectivity of subscriber terminal is normal based on the state of the “Neighbor_State” field therein and the state on the “Subscriber_State” field in the entry of the subscriber connectivity cache list.
 13. A method for detecting connectivity in a network, the method comprising: creating a subscriber connectivity cache list when connectivity between a subscriber terminal and an access node is established; querying for an entry in a neighbor cache list corresponding to the subscriber terminal based on a polling time set in the subscriber connectivity cache list, the polling time being based on entry information in the subscriber connectivity cache list and entry information in the neighbor cache list, the subscriber connectivity cache list including a subscriber state that identifies the state of the subscriber terminal, the neighbor cache list including a neighbor state that identifies whether the subscriber terminal is reachable; deciding whether the connectivity is desired based on the entry information corresponding to the subscriber terminal of the subscriber connectivity cache list and neighbor cache list; terminating connectivity when subscriber terminal entry information in the neighbor cache list and the subscriber connectivity cache list is undesired, the entry information of the neighbor cache list identifying at least if the subscriber terminal is reachable; and deleting the created entry of the subscriber connectivity cache list when logging off abnormally. 